package com.ns.scs.task.excutor.basic;


import com.ns.scs.task.vo.ScheduledTaskVO;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;

/**
 * 所有定时任务父类
 * 定时任务业务类必须继承该类
 *
 * @author liao.wei
 * @since 2024/11/11
 */
@Getter
@Slf4j
public class ScheduledBasicActuator implements Runnable {

    /**
     * 定时任务配置
     * -- GETTER --
     * 获取定时任务配置
     */
    private final ScheduledTaskVO scheduledTask;

    /**
     * 有参构造：用于赋值定时任务配置
     */
    public ScheduledBasicActuator(ScheduledTaskVO scheduledTask) {
        this.scheduledTask = scheduledTask;
    }

    /**
     * 实现Runnable类run，无具体意义。用于子类实现具体业务
     */
    @Override
    public void run() {
        log.info("{}:开始执行！", scheduledTask.getId());
    }
}